\hypertarget{message_8c}{
\section{/home/noxon/coding/C/esiee-in301/libcomm/message.c File Reference}
\label{message_8c}\index{/home/noxon/coding/C/esiee-in301/libcomm/message.c@{/home/noxon/coding/C/esiee-in301/libcomm/message.c}}
}
{\tt \#include \char`\"{}message.h\char`\"{}}\par
\subsection*{Functions}
\begin{CompactItemize}
\item 
int \hyperlink{message_8c_92c2c0583e0e85bd353c2cb6c4c462bf}{decoupe} (char $\ast$message, char $\ast$emetteur, char $\ast$type, char $\ast$\hyperlink{structaction}{action}, char $\ast$valeur)
\item 
char $\ast$ \hyperlink{message_8c_b54ef99ea54b4285bfe417afa2ea9ceb}{message} (char $\ast$emeteur, char $\ast$type, char $\ast$\hyperlink{structaction}{action}, char $\ast$valeur)
\item 
\hyperlink{structmsg__struct}{msg} $\ast$ \hyperlink{message_8c_23f5410bcb26e7a7d38c030dc6529806}{create\_\-msg} (const char $\ast$emetteur, const char $\ast$type, const char $\ast$\hyperlink{structaction}{action}, const char $\ast$valeur)
\item 
char $\ast$ \hyperlink{message_8c_be214f5fc66e60c4ec70cb29b75f9553}{msg\_\-to\_\-str} (\hyperlink{structmsg__struct}{msg} $\ast$\hyperlink{structmsg__struct}{msg})
\item 
\hyperlink{structmsg__struct}{msg} $\ast$ \hyperlink{message_8c_ad572a7f8203a1838378451d6fef3ec8}{str\_\-to\_\-msg} (char $\ast$mess)
\item 
void \hyperlink{message_8c_0282fd92d95a32c573832baba8d18167}{log\_\-msg} (const char $\ast$un\_\-msg, \hyperlink{structmsg__struct}{msg} $\ast$damsg)
\end{CompactItemize}


\subsection{Function Documentation}
\hypertarget{message_8c_23f5410bcb26e7a7d38c030dc6529806}{
\index{message.c@{message.c}!create\_\-msg@{create\_\-msg}}
\index{create\_\-msg@{create\_\-msg}!message.c@{message.c}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf msg}$\ast$ create\_\-msg (const char $\ast$ {\em emetteur}, \/  const char $\ast$ {\em type}, \/  const char $\ast$ {\em action}, \/  const char $\ast$ {\em valeur})}}
\label{message_8c_23f5410bcb26e7a7d38c030dc6529806}


create\_\-msg: Construction du message. Le message est alloué dans la fonction. \begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em $\ast$emetteur}]émetteur du message \item[{\em $\ast$type}]type du message \item[{\em $\ast$action}]identificateur de l'action \item[{\em $\ast$valeur}]valeur associée au message \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]le message de type msg \par
{\bf Exemple d'utilisation} \par
 {\tt msg$\ast$ ordre = create\_\-msg(emetteur,type,action,valeur);} \end{Desc}


Definition at line 23 of file message.c.

References msg\_\-struct::action, msg\_\-struct::emetteur, log\_\-call(), msg\_\-struct::type, and msg\_\-struct::valeur.

Referenced by execution(), gene\_\-msg(), launch\_\-interboursier(), and str\_\-to\_\-msg().\hypertarget{message_8c_92c2c0583e0e85bd353c2cb6c4c462bf}{
\index{message.c@{message.c}!decoupe@{decoupe}}
\index{decoupe@{decoupe}!message.c@{message.c}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int decoupe (char $\ast$ {\em message}, \/  char $\ast$ {\em emetteur}, \/  char $\ast$ {\em type}, \/  char $\ast$ {\em action}, \/  char $\ast$ {\em valeur})}}
\label{message_8c_92c2c0583e0e85bd353c2cb6c4c462bf}


Decoupe d'un message: prend un message en char$\ast$ et en extrait les informations \begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em $\ast$message}]le texte du message \item[{\em $\ast$emetteur}]émeteur du message \item[{\em $\ast$type}]type du message \item[{\em $\ast$action}]identificateur de l'action \item[{\em $\ast$valeur}]valeur associée au message \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]0 si erreur, 1 sinon ATTENTION: Les paramètres étant des pointeurs, les variables associées DOIVENT être allouées avant l'appel de la fonction \par
{\bf Exemple d'utilisation} \par
 \small\begin{alltt}char *emetteur, *type, *action, *valeur;
 emetteur=(char*)malloc(sizeof(char)*12);
 type=(char*)malloc(sizeof(char)*12);
 action=(char*)malloc(sizeof(char)*11);
 valeur=(char*)malloc(sizeof(char)*6);
 decoupe(mess,emetteur,type,action,valeur);\end{alltt}
\normalsize 
 \end{Desc}


Definition at line 3 of file message.c.

Referenced by str\_\-to\_\-msg().\hypertarget{message_8c_0282fd92d95a32c573832baba8d18167}{
\index{message.c@{message.c}!log\_\-msg@{log\_\-msg}}
\index{log\_\-msg@{log\_\-msg}!message.c@{message.c}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void log\_\-msg (const char $\ast$ {\em un\_\-msg}, \/  {\bf msg} $\ast$ {\em damsg})}}
\label{message_8c_0282fd92d95a32c573832baba8d18167}


Permet de logguer les ordres de transaction. Placé dans \hyperlink{message_8h}{message.h} puisque utilisé uniquement pour les messages. \begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em un\_\-msg}]message d'explication lié à l'ordre de transaction \item[{\em damsg}]l'ordre à être loggué. \par
{\bf Exemple d'utilisation} {\tt log\_\-msg(\char`\"{}Test du log de message\char`\"{},ordre);}\par
 Exemple de sortie: {\tt \mbox{[}M\mbox{]} $<$2009-01-10 02:43:56$>$ Test du log de message: Vente par 0000000004: action=0003000003 valeur=39 } \end{description}
\end{Desc}


Definition at line 63 of file message.c.

References msg\_\-struct::action, msg\_\-struct::emetteur, msg\_\-type, private\_\-write\_\-log(), msg\_\-struct::type, and msg\_\-struct::valeur.

Referenced by execution(), launch\_\-interboursier(), log\_\-msg\_\-srv(), and msg\_\-to\_\-str().\hypertarget{message_8c_b54ef99ea54b4285bfe417afa2ea9ceb}{
\index{message.c@{message.c}!message@{message}}
\index{message@{message}!message.c@{message.c}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ message (char $\ast$ {\em emeteur}, \/  char $\ast$ {\em type}, \/  char $\ast$ {\em action}, \/  char $\ast$ {\em valeur})}}
\label{message_8c_b54ef99ea54b4285bfe417afa2ea9ceb}


message: Construction du message. Le message est alloué dans la fonction. \begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em $\ast$emeteur}]émeteur du message \item[{\em $\ast$type}]type du message \item[{\em $\ast$action}]identificateur de l'action \item[{\em $\ast$valeur}]valeur associée au message \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]le message construit suivant le protocole à partir des arguments \par
{\bf Exemple d'utilisation} {\tt message(msg-$>$emetteur, msg-$>$type, msg-$>$\hyperlink{structaction}{action}, msg-$>$valeur)} \end{Desc}


Definition at line 10 of file message.c.

Referenced by msg\_\-to\_\-str().\hypertarget{message_8c_be214f5fc66e60c4ec70cb29b75f9553}{
\index{message.c@{message.c}!msg\_\-to\_\-str@{msg\_\-to\_\-str}}
\index{msg\_\-to\_\-str@{msg\_\-to\_\-str}!message.c@{message.c}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ msg\_\-to\_\-str ({\bf msg} $\ast$ {\em msg})}}
\label{message_8c_be214f5fc66e60c4ec70cb29b75f9553}


Transforme le message msg en une chaine de caractères suivant le protocole utilisé Fait appel à \hyperlink{message_8c_b54ef99ea54b4285bfe417afa2ea9ceb}{message()}. Si le programme est lancé en mode débug, alors cette opération est logguée. \begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em msg}]le message de type msg à être transformé en char$\ast$ \par
{\bf Exemple d'utilisation} \par
 {\tt char$\ast$ rtn = msg\_\-to\_\-str(ordre\_\-sous\_\-forme\_\-msg);} \end{description}
\end{Desc}


Definition at line 44 of file message.c.

References msg\_\-struct::action, msg\_\-struct::emetteur, log\_\-msg(), message(), msg\_\-struct::type, and msg\_\-struct::valeur.

Referenced by launch\_\-execution(), launch\_\-interboursier(), and launch\_\-terminal().\hypertarget{message_8c_ad572a7f8203a1838378451d6fef3ec8}{
\index{message.c@{message.c}!str\_\-to\_\-msg@{str\_\-to\_\-msg}}
\index{str\_\-to\_\-msg@{str\_\-to\_\-msg}!message.c@{message.c}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf msg}$\ast$ str\_\-to\_\-msg (char $\ast$ {\em mess})}}
\label{message_8c_ad572a7f8203a1838378451d6fef3ec8}


Transforme le message msg en une chaine de caractères suivant le protocole utilisé Fait appel à \hyperlink{message_8c_92c2c0583e0e85bd353c2cb6c4c462bf}{decoupe()}. Il n'est pas nécessaire d'allouer de la mémoire, celle-ci étant allouée dans la fonction. \begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em mess}]le message de type char$\ast$ à être transformé en msg$\ast$ \par
{\bf Exemple d'utilisation} \par
 {\tt msg $\ast$ rtn; rtn = str\_\-to\_\-msg(\char`\"{}$|$0000000004$|$Vente$|$0003000003$|$39$|$\char`\"{});} \end{description}
\end{Desc}


Definition at line 51 of file message.c.

References create\_\-msg(), decoupe(), and log\_\-call().

Referenced by launch\_\-acquisition(), launch\_\-execution(), launch\_\-interboursier(), and launch\_\-terminal().